Data synchronization and conflict resolution have long been a concern in the context of computerized file systems. When multiple users attempt to modify the same dataset at the same time, the file system must be capable of locking the dataset so that only one user at a time can perform the desired modification. Further, the file system must recognize whether the attempted modifications are in conflict with each other and determine an outcome that preserves the integrity of the datasets.
As distributed data storage systems such as cloud-based file repositories become more common, accessibility and availability of data to many different users is a primary focus. To support this objective, multiple versions of the same dataset or file are stored in several different physical and/or logical locations in a distributed data storage system. However, traditional data storage systems typically perform complicated, bandwidth-intensive procedures in order to keep the multiple file versions in sync—which results in less efficient synchronization and slower response time to file access and modification requests.